struct _IRP// Size=0xd0
{
    short Type;// Offset=0x0 Size=0x2
    unsigned short Size;// Offset=0x2 Size=0x2
    unsigned short AllocationProcessorNumber;// Offset=0x4 Size=0x2
    unsigned short Reserved;// Offset=0x6 Size=0x2
    struct _MDL * MdlAddress;// Offset=0x8 Size=0x8
    unsigned long Flags;// Offset=0x10 Size=0x4
    union _unnamed_93 AssociatedIrp;// Offset=0x18 Size=0x8
    struct _LIST_ENTRY ThreadListEntry;// Offset=0x20 Size=0x10
    struct _IO_STATUS_BLOCK IoStatus;// Offset=0x30 Size=0x10
    char RequestorMode;// Offset=0x40 Size=0x1
    unsigned char PendingReturned;// Offset=0x41 Size=0x1
    char StackCount;// Offset=0x42 Size=0x1
    char CurrentLocation;// Offset=0x43 Size=0x1
    unsigned char Cancel;// Offset=0x44 Size=0x1
    unsigned char CancelIrql;// Offset=0x45 Size=0x1
    char ApcEnvironment;// Offset=0x46 Size=0x1
    unsigned char AllocationFlags;// Offset=0x47 Size=0x1
    struct _IO_STATUS_BLOCK * UserIosb;// Offset=0x48 Size=0x8
    struct _KEVENT * UserEvent;// Offset=0x50 Size=0x8
    union _unnamed_95 Overlay;// Offset=0x58 Size=0x10
    void  ( * CancelRoutine)(struct _DEVICE_OBJECT * ,struct _IRP * );// Offset=0x68 Size=0x8
    void * UserBuffer;// Offset=0x70 Size=0x8
    union _unnamed_97 Tail;// Offset=0x78 Size=0x58
};